﻿using System;
using System.CodeDom.Compiler;
using System.Collections.Generic;
using System.Data;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
using System.Timers;
using MagicTraderLib;
using MagicTraderLib.Schema;
using MagicTraderLib.Site.NM;

namespace ConsoleApplication1
{
    // applicatie kan of door handmatig kaarten in te voeren 
    // ruilen voor tegen 
    // of door importeren van wants van 2 gebruikers
    // daarmaast importeren 
    class Program
    {
        // prijssites
        // niet zon goede, geen series
        // http://classic.magictraders.com/cgi-bin/query.cgi?list=magic&target=aurelia&field=0&operator=re
        // https://mtgmadness.com/search/Fated%20Retribution
        public static void Main(string[] args)
        {
            //var bom = new MagicCardMarketSite();
            //var kaarten = bom.LeesKaartGegevens("strip mine"); // hier een lijst met kaarten
            //var kaarten2 = bom.LeesKaartGegevens("strip mine", "4th edtion"); // hier een kaart

            //string hij = "8698";// = args[0];//"28070";
            //string ik = "44261"; //= args[1];//"44261";

            Console.WriteLine("bij nedermagic zie je als je op pp klinkt een userid in de adresbalk van je browser");
            Console.WriteLine("In je browser zie je bijvoorbeeld : http://www.nedermagic.nl/pp_item.asp?userid=666");
            Console.WriteLine("jou userid is nu 666 dat is hetgeen wat je moet invoeren");

            Console.Write("Jouw userid:");
            string ik = Console.ReadLine();
            Console.WriteLine();
            Console.Write("zijn userid:");
            string hij = Console.ReadLine();

            IMagicVerzamelingSite site = new NedermagicSite();
            const bool download = true;
            if (download) site.SchrijfVerzamelingAsync(ik);
            var mijn = site.LeesVerzamelingCache(ik);

            //var list = new [] {"35403"};//((NedermagicSite)site).WieRuiltdezeKaart("http://www.nedermagic.nl/meerinfo.asp?cardid=126059");
            //foreach (string hij in list)
            {
                if (download) site.SchrijfVerzamelingAsync(hij);

                var zijn = site.LeesVerzamelingCache(hij);

                var vergelijker = new CollectieVergelijker(mijn, zijn);
                vergelijker.Export(uitvoer: Soortuitvoer.Csv);
                vergelijker.Export();
            }
            //var mijns = site.LeesVerzameling(ik);
            //var zijn = site.LeesVerzameling(hij);
            
             Console.WriteLine("er zijn bestanden aangemaakt in c:\\temp\\");
            Console.WriteLine("[enter] to exit");
            Console.ReadLine();
        }

        static void WieisOnline(object sender, ElapsedEventArgs e)
        {
            //analyze starten
            IMagicVerzamelingSite site = new NedermagicSite();
            IEnumerable<UsersOnline> users = site.GetUsersOnline();

            File.Delete(@"c:\temp\uol.csv");
            File.AppendAllLines(@"c:\temp\uol.csv", users.Select(i => i.ToString()));
        }
    }

    //string user = args[0];
    //string pwd = args[1];
    //var response = Openpagina("http://www.nedermagic.nl/loginrespond.asp", String.Format("username={0}&password={1}&submit1=Login", user, pwd));

    //// collectie
    ////response = Openpagina("http://www.nedermagic.nl/magic-cards.asp?ou=collectie&col=44261", null, response.Cookies);

    ////haves 
    ////response = Openpagina("http://www.nedermagic.nl/magic-cards.asp?ou=collectie&cf1=trades&col=44261", null, response.Cookies);

    ////wants
    //response = Openpagina("http://www.nedermagic.nl/magic-cards.asp?ou=collectie&cf1=wants&col=44261", null, response.Cookies);
    //int aantal = Zoekaantalpaginas(response);
    //for (int i = 1; i <= aantal; i++)
    //{
    //    response = Openpagina("http://www.nedermagic.nl/magic-cards.asp?ou=collectie&cf1=wants&col=44261&page=" + i, null, response.Cookies);
    //    SavePagina(response, @"c:\temp\wants-pagina" + i + ".html");
    //}
    //// 

    //// messages
    ////response = Openpagina("http://www.nedermagic.nl/nm_showlist.asp", null, response.Cookies);
}
